﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using BusinessLayer.Clases_Seguridad_BO;

namespace Tambini.Web
{
    public partial class UsuarioFormV2 : System.Web.UI.Page
    {

        clsUsuarioBL negocioUsuario = new clsUsuarioBL();
        string idSeguridad = ConfigurationManager.AppSettings["Seguridad"];

        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                this.ListaUsuarios();
            }
        }

        void ListaUsuarios()
        {
            try
            {
                gvListUsuario.DataSource = negocioUsuario.Listar();
                gvListUsuario.DataBind();

            }
            catch (Exception ex)
            {
                //throw ex;
            }
        }

        protected void gvListUsuario_PageIndexChanged(object sender, EventArgs e)
        {
            this.ListaUsuarios();
        }

        protected void gvListUsuario_FocusedRowChanged(object sender, EventArgs e)
        {

        }

        protected void ASPxButton2_Click(object sender, EventArgs e)
        {
            try
            {
                int seleccion = Convert.ToInt32(gvListUsuario.FocusedRowIndex.ToString());
                if (seleccion != -1)
                {
                    Session["ID_USUARIO"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "ID_USUARIO"));
                    Session["DES_NOMBRE"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "DES_NOMBRE"));
                    Session["DES_APELLIDOS"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "DES_APELLIDOS"));
                    Session["DES_EMAIL"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "DES_EMAIL"));
                    Session["IND_ESTADO"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "IND_ESTADO"));
                    Session["DES_PASSWORD"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "DES_PASSWORD"));
                    Session["USR_CREACION"] = Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "USR_CREACION"));
                    //Session["ID_TIPO_USUARIO"] = Convert.ToInt32(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "ID_TIPO_USUARIO"));
                    ScriptManager.RegisterStartupScript(this, GetType(), "script", "document.location.href='UsuarioFormActualizar.aspx?id=" + Request["id"].ToString() + "'", true);
                }
                else
                {
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
            }
            catch(Exception ex)
            {
                Response.Write(ex.Message);
            }
        }

        protected void gvListUsuario_AfterPerformCallback(object sender, DevExpress.Web.ASPxGridView.ASPxGridViewAfterPerformCallbackEventArgs e)
        {
            this.ListaUsuarios();
        }

        protected void ASPxButton1_Click(object sender, EventArgs e)
        {
            Response.Redirect("UsuarioFormNuevo.aspx?id=" + Request["id"].ToString());
        }

        protected void btnEliminar_Click(object sender, EventArgs e)
        {
            try
            {
                int seleccion = Convert.ToInt32(gvListUsuario.FocusedRowIndex.ToString());
                if (seleccion != -1)
                {

                    lblMensaje.Text = String.Empty;
                    lblMensaje.Text = "¿Esta seguro de anular el usuario?";
                    string script = "ShowConfirmacion();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
                else
                {
                    string script = "ShowMsj();";
                    ScriptManager.RegisterStartupScript(this, typeof(Page), "carga", script, true);
                }
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }

        }

        private void Eliminar()
        {
            try
            {
                negocioUsuario.Actualiza_EstadoUsuario("I", Convert.ToString(gvListUsuario.GetRowValues(gvListUsuario.FocusedRowIndex, "ID_USUARIO")));
            }
            catch (Exception ex)
            {
                Response.Write(ex.Message);
            }
        }

        protected void ASPxButton4_Click(object sender, EventArgs e)
        {
            Response.Redirect("~/Index.aspx?id=" + Request["id"].ToString());
        }

        protected void btnAceptar_Click(object sender, EventArgs e)
        {
            this.Eliminar();
            this.ListaUsuarios();
        }

    }
}